//app.js
var QQMapWX = require('/lib/qqmap-wx-jssdk.min.js');
var qqmapsdk;

App({
  onLaunch: function () {
    var that = this;
    // 展示本地存储能力
    var logs = wx.getStorageSync('logs') || []
    logs.unshift(Date.now())
    //wx.setStorageSync('logs', logs)
    // 登录
    wx.login({
      success: function (res){
        wx.request({
          url: that.globalData.apiDomain + '/api/user/login/' + res.code,
          data: {},
          method: 'GET', // OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT 
          // header: {}, // 设置请求的 header  
          success: function (res) {
            that.globalData.openId = res.data.data.openid;
          }
        });
      }
    })

    // 获取用户信息
    wx.getSetting({
      success: res => {
        if (res.authSetting['scope.userInfo']) {
          // 已经授权，可以直接调用 getUserInfo 获取头像昵称，不会弹框
          wx.getUserInfo({
            success: res => {
              // 可以将 res 发送给后台解码出 unionId
              this.globalData.userInfo = res.userInfo;
              // 由于 getUserInfo 是网络请求，可能会在 Page.onLoad 之后才返回
              // 所以此处加入 callback 以防止这种情况
              if (this.userInfoReadyCallback) {
                this.userInfoReadyCallback(res)
              }
            }
          })
        }
      }
    })

    wx.getSetting({
      success(res) {
        if (!res.authSetting['scope.writePhotosAlbum']) {
          wx.authorize({
            scope: 'scope.writePhotosAlbum',
            success() {
            }
          })
        }
      }
    })
  },
  globalData: {
    userInfo: null,
    baseDomain:"https://qingtianbangzhuan.oss-cn-beijing.aliyuncs.com/",
    apiDomain:"https://api.yuqingtian.com",
    //apiDomain: "http://localhost:8080",
    servicePhone: "13288326641",
    appId:"wx9f944c79773101e6",
    openId:null
  },

  getExpressInfo: function (num, cb) {
    var apiDomain = this.globalData.apiDomain;
    wx.request({
      url: apiDomain +'/api/Express/getExpressInfo/' + num, 
      method:"GET",
      success: function (res) {
        var data = JSON.parse(res.data.data);
        cb(data.list);
      }
    })
  },
  //获取用户地理位置权限
  getPermission: function (obj) {
    wx.chooseLocation({
      success: function (res) {
        obj.setData({
          addr: res.address      //调用成功直接设置地址
        })
      },
      fail: function () {
        wx.getSetting({
          success: function (res) {
            var statu = res.authSetting;
            if (!statu['scope.userLocation']) {
              wx.showModal({
                title: '是否授权当前位置',
                content: '需要获取您的地理位置，请确认授权，否则地图功能将无法使用',
                success: function (tip) {
                  if (tip.confirm) {
                    wx.openSetting({
                      success: function (data) {
                        if (data.authSetting["scope.userLocation"] === true) {
                          wx.showToast({
                            title: '授权成功',
                            icon: 'success',
                            duration: 1000
                          })
                          //授权成功之后，再调用chooseLocation选择地方
                          wx.chooseLocation({
                            success: function (res) {
                              qqmapsdk = new QQMapWX({
                                key: 'UELBZ-QQUW3-CXD3L-3G3Q6-NPENQ-TYB5T' // 必填
                              });
                              qqmapsdk.reverseGeocoder({
                                location: {
                                  latitude: res.latitude,
                                  longitude: res.longitude
                                },
                                success: function (addressRes) {
                                  obj.setData({
                                    province: addressRes.result.ad_info.province,
                                    city: addressRes.result.ad_info.city,
                                    district: addressRes.result.ad_info.district,
                                    adcode: addressRes.result.ad_info.adcode,
                                    area: addressRes.result.ad_info.city + "|" + addressRes.result.ad_info.district
                                  })
                                },
                                fail: function (res) { },
                                complete: function (res) { }
                              })

                            },
                          })
                        } else {
                          wx.showToast({
                            title: '授权失败',
                            icon: 'success',
                            duration: 1000
                          })
                        }
                      }
                    })
                  }
                }
              })
            }
          },
          fail: function (res) {
            wx.showToast({
              title: '调用授权窗口失败',
              icon: 'success',
              duration: 1000
            })
          }
        })
      }
    })
  },
})